package com.hzqy.persistence.dao.product;

import java.util.List;
import java.util.Map;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Repository;

import com.hzqy.persistence.dao.core.PersistenceDao;
import com.hzqy.web.vo.CmPicturesVo;
import com.hzqy.web.vo.PmsOrgVo;
import com.hzqy.web.vo.PmsUserVo;
import com.hzqy.web.vo.SysProductOrgVo;
import com.hzqy.web.vo.SysProductVo;

@Repository
public class ProductDao extends PersistenceDao<PmsUserVo, Integer>{
	protected final Logger LOG = LoggerFactory.getLogger(getClass());

	public SysProductVo selectProduct(int f_sp_id) {
		return getSqlSession().selectOne(this.getNamespace() + "selectProduct", f_sp_id);
	}
	
	public List<SysProductVo> selectProductList(Map<String,Object> map){
		String namespace = this.getNamespace();
		return getSqlSession().selectList(namespace + "selectProductList", map);
	}
	
	public int insertProduct(SysProductVo spv) {
		return getSqlSession().insert(this.getNamespace() +"insertProduct", spv);
	}
	
	public int deleteProduct(int f_sp_id){
		String namespace = this.getNamespace();
		return getSqlSession().update(namespace + "deleteProduct", f_sp_id);
	}
	
	public int updateProduct(SysProductVo spv){
		String namespace = this.getNamespace();
		return getSqlSession().update(namespace + "updateProduct",spv);
	}
	
	public int findProductCount(SysProductVo spv) {
		String namespace = this.getNamespace();
		return getSqlSession().selectOne(namespace + "findProductCount", spv);
	}

	public int insertProductOrg(SysProductOrgVo productorg) {
		return getSqlSession().insert(this.getNamespace() +"insertProductOrg", productorg);
	}

	public List<PmsOrgVo> selectProductOrg(Map<String, Object> map) {
		return getSqlSession().selectList(this.getNamespace() + "selectProductOrg", map);
	}

	public List<PmsOrgVo> selectProductOrgList(Map<String, Object> map) {
		return getSqlSession().selectList(this.getNamespace() + "selectProductOrgList", map);
	}
	
	public int deleteProductOrg(SysProductOrgVo productorg){
		return getSqlSession().delete(this.getNamespace() + "deleteProductOrg", productorg);
	}
	
	public int deleteProductOrgByOrgId(int f_spo_orgid){
		return getSqlSession().delete(this.getNamespace() + "deleteProductOrgByOrgId", f_spo_orgid);
	}
}
